/* Handles application Start, Reset, Running, Stop

	Contains functions for above, and  init. all objects in game such as players (excl. maps )

*/

#ifndef APP_H
#define APP_H

#include "Player.h" // Empty
#include "Event.h"
#include "GameMap.h"

#include <stdio.h>
#include <Windows.h>

class App : public Event
{
	private:
		DWORD        mode; // Console mode
		HANDLE hstdin;     // Console handler (for input)
		bool		Running;

		Player		Player1;
		//Player	Player2;

	public:
		App();

		int OnExecute();

	public:

		bool OnInit();

        void OnEvent( INPUT_RECORD ); // Passes event to Event manager

        	void OnKeyDown( int vk_code );

        	void OnKeyUp( int vk_code );

            void OnExit();

        void OnLoop();

        void OnRender();

        void OnCleanup();
};

#endif
